2009/03/20

解讀三萬行沒有註解程式碼的政治正確性

昨天小老闆轉寄了一個檔案,說是 R 的 script,希望我把裡面的程式在幹甚麼稍微整理一下跟他說。我看了一下,是我的前任寄來的,他的程式特色是:完全沒有註解。

我稍微看了一下,一共兩萬八千多行,一句註解也沒有,是要怎麼看?
好吧,想說既然老闆都交待了,就先從把每個函數標出來開始吧。標著標著半個鐘頭過去了,只標到6000多行,我都還沒看函數的內容是什麼呢,想想這根本是浪費時間,就回信跟老闆說:註解寫得不好是很平常的事,但是完全沒註解就是故意的了(除非萊比錫大學的 computer science 有教什麼寫程式不寫註解的獨門心法),如果不是非要拿這個程式碼來用不可,就別浪費時間看了吧。

結果小老闆臉色很難看的跟我說:「如果你不願意看的話,我只好自己看了,可是我又不懂 R....」

我問說:「我們不是不做這個了嗎?還是說裡面有很重要的程式是必須要用到的?」

「這個東西已經沒有要用了,可是現在這變成一個『政治』問題....」


整件事情要追溯到一年前我剛來的時候。那時前任已經待了三年半,應該要結束了,於是小老闆希望他整理一下三年多來發表兩篇 journal articles 所用到的程式跟資料,方便我可以繼續接下去做。但是不知怎麼的,整件事突然就沒有下文了,小老闆也跟我說要改變研究方向,我才逐漸意識到,是前任拒絕把他的成果交出來,因為他還計畫要用來發表其他論文。

當時已經來了兩個多月,發生這種事情其實很不愉快(當然還有平時跟前任交談時他表現出的不屑跟敵意),當時真的有種「真是見面不如聞名」、「乾脆走人算了」的想法。不過既然都說了要換主題,這種人事傾軋我沒有能力也沒有意願去干涉,這件事情也就逐漸淡忘了。

後來好像是前任改加入了另一個 department 繼續寫他的論文,然後大老闆透過 director 之間的管道,表示要求前任既然領了三年多的薪水,於情於理都應該要把之前三年的工作成果交出來放在機構的 archive 裡,才有這個三萬行的程式碼。

現在既然都已經鬧到 director 那個層級去了,原則上小老闆就有責任把整件事情做個交待,要把前任終於交出來的程式整理好歸檔,即使這個程式已經不會再用到。


我自己是覺得這整件事情就相當荒謬。

首先,我知道有的 programmer 會在 source code 上留一手,免得自己失去利用價值被公司解僱,但是這一手要留得漂亮才行(就是不要讓人覺得很刻意),不然反而會遭致公司跟同事的猜忌而首先被開除。我想一個快拿到博士的人應該不會連這一點點人情世故都不懂吧?

然後是小老闆的應對。既然是工作移交,就應該要有清楚的說明文件,怎麼會是拿到一個把所有程式統統貼在一起的純文字檔就打算息事寧人了?更不用說要求我這個不相干的人來解讀這個程式碼,我抱怨之後還一直跟我說:「這不會很難吧?你可以這樣這樣做就好啦!」是怎樣,欺善怕惡,我平時任勞任怨就活該要來收拾這種爛攤子嗎?


總之,真是見面不如聞名。還有,平常監看員工言論的主管們,我從頭到尾都沒說我是在哪裡工作,可別說我破壞公司名譽。

沒有留言: